package util;

import cn.tedu.test.JdbcTest;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

/**
 * Date：2022年03月
 * Author：程Sir
 * Name： JDBC_project
 * Content:
 */
public class JDBCUtils {
    public static String url;
    public static String user;
    public static String password;
    static {
        try {
            InputStream in = JdbcTest.class.getClassLoader().getResourceAsStream("db.properties");
            Properties properties = new Properties();
            // 通过加载io流将读取的数据封装到properties对象里面
            properties.load(in);
            // 通过properties对象获取数据
            url = properties.getProperty("jdbc.url");
            user = properties.getProperty("jdbc.username"); // ? root
            password = properties.getProperty("jdbc.password");
            System.out.println(url+","+user+","+password);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    /**
     * 获取连接的方法
     * @return 返回拿到的连接对象
     */
    public static Connection getConnection(){
        // 声明连接对象
        Connection connection =null;

        try {
            // 通过驱动管理对象获取需要的连接对象
            connection = DriverManager.getConnection(url,user,password);
        } catch ( SQLException e) {
            e.printStackTrace();
        }
        return connection;
    }

    /**
     * 关闭连接对象
     * @param connection 需要关闭的连接对象
     */
    public static void close(Connection connection){
        try {
            if (connection!=null){
                connection.close();
            }
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }

}
